<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport"
        content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>set实践</title>
</head>
<body>
  <script>
    let arr = [1, 2, 3, 4, 5, 4, 3, 2, 1]
    // 1.数组去重
    // let result = [...new Set(arr)]
    // console.log(result)

    // 2.交集
    let arr2 = [4, 5, 6, 5, 6]
    // let result = [...new Set(arr)].filter((item) => {
    //     let s2 = new Set(arr2)
    //     return s2.has(item)
    //   },
    // )
    let result = [...new Set(arr)].filter(item => new Set(arr2).has(item))
    // 也就是
    // let result = [...new Set(arr)].filter(function (item) {
    //   return new Set(arr2).has(item)
    // })
    console.log(result)

    // 并集
    let union = [...new Set([...arr, ...arr2])]
    console.log(union)

    // 差集
    let diff = [...new Set(arr)].filter(item => !(new Set(arr2).has(item)))
    console.log(diff)
  </script>
</body>
</html>